/*
 *
 * 名称：阴阳
 * 功能：阴阳运算显示功能
 * 作者：清河张
 * 时间：2025.05.18
 *
 */
#include "yy.h"


YY YY::_objs[2] =
{
    {0,"阴","少","里","弱"},
    {1,"阳","太","表","强"},
};

YY::YY(bool yy)
{
    *this = yy ? _objs[1] : _objs[0];
}

YY::YY(bool b, const char *name, const char *ts,
              const char* bl, const char* qr):
    _b(b),_name(name),_tsname(ts),_blname(bl),_qrname(qr)
{

}

YY::operator bool() const
{
    return _b;
}

const char *YY::name() const
{
    return _name;
}

const char *YY::tsname() const
{
    return _tsname;
}

const char *YY::blname() const
{
    return _blname;
}

const char *YY::qrname() const
{
    return _qrname;
}

YY YY::operator!() const
{
    return !_b;
}

YY YY::he(const YY& yy) const
{
    return _b && yy._b;
}

YY YY::bing(const YY & yy) const
{
    return _b || yy._b;
}

YY YY::yi(const YY &yy) const
{
    return _b != yy._b;
}

YY YY::tong(const YY &yy) const
{
    return _b == yy._b;
}

YY YY::fan(int n) const
{
    return (n % 2) ? !_b : _b;
}

